<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        // 先找到优先级最低的进行划分，再在划分里面找最低的优先级再划分以此类推，也就是先计算优先级高的
        console.log(4 >= 6 || '人' != '阿凡达' && !(12 * 2 == 144) && true); //true
        /* 先根据逻辑或||划分为4 >= 6 和 '人' != '阿凡达' && !(12 * 2 == 144) && true；
        再根据逻辑与&&把右边划分为 '人' != '阿凡达' 和 !(12 * 2 == 144) 还有 true；
        先计算小括号里的得出是false 
        那么!(12 * 2 == 144)就是true 
        而'人' != '阿凡达'也是true 
        那么'人' != '阿凡达' && !(12 * 2 == 144)也为true
        同理得'人' != '阿凡达' && !(12 * 2 == 144) && true为true
        4 >= 6是false
        false || true得到的是true */

        var num = 10;
        console.log(5 == num / 2 && (2 + 2 * num).toString() === '22'); //true
        /* 先根据逻辑与&&划分为 5 == num / 2 和 (2 + 2 * num).toString() === '22'
        根据相等== 和全等=== 两边分别划分为 5 和 num / 2 ； (2 + 2 * num).toString() 和 '22'
        先计算括号里的得到22
        再计算 22.String 得到 '22'
        所以 (2 + 2 * num).toString() === '22' 为true
        num / 2 得到 5
        所以 5 == num / 2 为true
        true && true 最后得到true */
    </script>
</head>

<body>

</body>

</html>